|
Speck is a family of lightweight block ciphers publicly released by the National Security Agency (NSA) in June 2013. Speck has been optimized for performance in software implementations, while its sister algorithm, Simon, has been optimized for hardware implementations. Speck is an add-rotate-xor (ARX) cipher. Speck supports a variety of block and key sizes. A block is always two words, but the words may be 16, 24, 32, 48 or 64 bits in size. The corresponding key is 2, 3 or 4 words. The round function consists of two rotations, adding the right word to the left word, xoring the key into the left word, then and xoring the left word to the right word. The number of rounds depends on the parameters selected, as follows: The key schedule uses the same round function as the main block cipher. == Reference code == The following is the designers' reference implementation of the Speck variant with a 128-bit block size and key, where key = (K(), K()). It is adapted from their IACR ePrint.〔 For 16-bit words, the rotates are 7 bits right and 2 bits left; for all other word sizes, they are 8 and 3 as shown here. If the key is more than 2 words long, there are 2 or 3 a values, which are used in rotation.抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Speck (cipher)」の詳細全文を読む スポンサード リンク
|